package main

import "fmt"

/*
发送数据：ch <- data
接收数据：data := <-ch

箭头符号 <- 在前，就是只读通道，如 <-chan int
箭头符号 <- 在后，就是只写通道，如 chan<- string
*/

// 只能发送数据不能接收数据
func send(c1 chan<- string) {
	c1 <- "hello world"
	//data := <-c1
	//fmt.Println(data)
	close(c1)
}

// 只能接收数据不能发送
func receive(c1 <-chan string, c2 chan<- string) {
	// 接收c1的数据
	data := <-c1
	fmt.Println(data)
	// c2发送数据
	//c2 <- c1
	//data2 := <-c2

}

func main() {
	ch1 := make(chan string, 4)
	ch2 := make(chan string, 4)

	send(ch1)
	receive(ch1, ch2)

}
